class Solution1 {
    public double myPow(double x, int n) {
        if (n < 0) {
            x = 1 / x;
            n = -n;
        }
        return dfs(x, n);
    }
    private double dfs(double x, int n) {
        if (n == 0) return 1.0;
        double tmp = dfs(x, n / 2);
        return n % 2 == 0 ? tmp * tmp : tmp * tmp * x;
    }

    public static void main(String[] args) {
        Solution1 solution1 = new Solution1();
        System.out.println(solution1.myPow(2.00000, -200000000));
    }
}